<script src="https://cdn.bootcdn.net/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>

    /*  $.ajax({
            type:"get",
            url:"./data/persons.json",
            data:{
                a:1
            },
            success(result){
                // 处理结果
                
            },
            error(err){
                // 处理错误信息
            }
        }) */



   let p1= new Promise((resolve, reject) => {
        $.ajax({
            type: "get",
            url: "./data/persons.json",
            data: {
                a: 1
            },
            success(result) {
                // 处理结果


                // resolve(result)
                resolve([null,result])
            },
            error(err) {
                // 处理错误信息
                // console.log(1111);
                // reject(1111) // await 无法等待reject，但是可以通过resolve把错误信息传递出去
                // resolve(1111) //可以传递出去
                // resolve(err) // resolve可以检测出err是错误信息，所以无法传递
                // resolve(JSON.stringify(err))

                resolve([err,undefined])

            }
        })
    })

    // 在ajax外部拿到result


    async  function  fun(){

        // let result= await p1;//await 只能配合resolve使用
        // console.log(result);

        let [err,result]= await p1;

        if(err){
            alert("出错了")
            return
        }

        alert("成功了")


        let [{id}]=result
        // let id=result[0].id
        
        console.log(id);//1


    }
    fun()


</script>